home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 April (Special) / Chip-Special_2003-04_Vypalujeme-cd-i-dvd.bin / soft / ac3delaycorr / ac3delay.exe / AC3 Delay Corrector Version 1.9.G32 next >
Encoding:
Text File  |  2002-12-21  |  55.4 KB  |  1,311 lines

  1. GlobaleVariablen
  2. WinMain
  3. Sub GlobaleVariablen
  4.   Global SourceFile$ = ""
  5.   Global TargetFile$ = ""
  6.   //
  7.   Global FrameLength As Integer = 0
  8.   Global BitRate As Integer = 0
  9.   Global FramesPerSecond As Float = 0
  10.   Global SilentFrameOK?
  11.   Global Const CR$ = Chr$($0D) + Chr$($0A)
  12.   Global Const AC3 = 0
  13.   Global Const MPA = 1
  14.   //
  15.   Global settingsFile$ = CurDir + "\ac3delay.ini"
  16.   //
  17.   Mode StrSpace "0" //Damit str$ keine Leerzeichen einfⁿgt
  18. End Sub
  19. Sub CommandLine
  20.   Global CmdParameter$ = _DosCmd$
  21.   If Not (CmdParameter$ = "")
  22.     SourceFile$ = @IgnoreQuotes(CmdParameter$)
  23.     CheckSource
  24.   EndIf
  25. End Sub
  26. Function IgnoreQuotes(txt$) As String
  27.   Local l% = Len(txt$), i%
  28.   Local c$, dummy$ = ""
  29.   //
  30.   For i% = 1 To l%
  31.     c$ = Mid$(txt$, i%, 1)
  32.     If Not (c$ = """")
  33.       dummy$ = dummy$ + c$
  34.     EndIf
  35.   Next i%
  36.   IgnoreQuotes = dummy$
  37. End Func
  38. Sub WriteIniFile
  39.   Local dummy$
  40.   dummy$ = Str$(chk_AddSilent.Value)
  41.   ~WritePrivateProfileString("Settings", "Add Silence", dummy$, settingsFile$)
  42. End Sub
  43. Sub WinMain
  44.   Local cmdLine$
  45.   LoadForm frm_WinMain
  46.   //
  47.   CommandLine
  48.   //
  49.   Do
  50.     Sleep
  51.   Until Me Is Nothing
  52. End Sub
  53. Sub CheckSource
  54.   Local pos&
  55.   Local dummy$
  56.   Local FileTyp As Integer
  57.   If Not (SourceFile$ = "")
  58.     ed_Source.Text = SourceFile$
  59.     FileTyp = @GetFileTyp(SourceFile$)
  60.     If FileTyp == AC3
  61.       pos& = InStr(SourceFile$, "AC3")
  62.       If pos& > 0
  63.         TargetFile$ = Left$(SourceFile$, pos& - 2) + ".ac3"
  64.       Else
  65.         TargetFile$ = Left$(SourceFile$, Len(SourceFile$) - 4) + "_fix.ac3"
  66.       EndIf
  67.     EndIf
  68.     If FileTyp == MPA
  69.       pos& = InStr(SourceFile$, "MPA")
  70.       If pos& > 0
  71.         TargetFile$ = Left$(SourceFile$, pos& - 2) + ".mpa"
  72.       Else
  73.         TargetFile$ = Left$(SourceFile$, Len(SourceFile$) - 4) + "_fix.mpa"
  74.       EndIf
  75.     EndIf
  76.     //
  77.     pos& = InStr(SourceFile$, "DELAY")
  78.     If pos& > 0
  79.       dummy$ = Mid(SourceFile$, pos& + 6, Len(SourceFile$) - (pos& + 5))
  80.       pos& = Val(dummy$)
  81.       ed_Delay.Text = Str$(pos&)
  82.     EndIf
  83.     //
  84.     ed_Target.Text = TargetFile$
  85.     AnalyseSource(FileTyp)
  86.   EndIf
  87.   Check_WriteButton
  88. End Sub
  89. Sub cmd_Source_Click
  90.   Ocx CommDlg cd
  91.   //
  92.   cd.FileName = "test.file"
  93.   cd.FileTitle = ""
  94.   cd.DefExt = "FILE"
  95.   cd.Filter = "AC3-Files|*.AC3|MPA-Files|*.MPA|All known files|*.AC3;*.MPA"
  96.   cd.FilterIndex = 3 //Pointer auf "All known files"
  97.   cd.Title = "Open Source File"
  98.   cd.Flags = cdoFileMustExist
  99.   cd.ShowOpen
  100.   //
  101.   SourceFile$ = cd.FileName
  102. '##E#
  103.   //
  104.   CheckSource
  105. End Sub
  106. >Function GetFileTyp(txt$) As Integer
  107.   Local FileTyp As Integer
  108.   Local dummy$
  109.   //
  110.   dummy$ = UCase$(Right$(txt$, 3))
  111.   If dummy$ = "AC3" Then FileTyp = AC3
  112.   If dummy$ = "MPA" Then FileTyp = MPA
  113.   Return FileTyp
  114. End Func
  115. >Sub Check_WriteButton
  116.   Local WriteOK? = False
  117.   If Not (TargetFile$ == SourceFile$)
  118.     If Not (TargetFile$ == "")
  119.       If Exist(SourceFile$)
  120.         If (FrameLength > 0)
  121.           WriteOK? = True
  122.         EndIf
  123.       EndIf
  124.     EndIf
  125.   EndIf
  126.   cmd_Write.Enabled = WriteOK?
  127. End Sub
  128. >Sub cmd_Target_Click
  129.   Ocx CommDlg cd
  130.   //
  131.   cd.FileName = "test.file"
  132.   cd.FileTitle = ""
  133.   cd.DefExt = "FILE"
  134.   cd.Filter = "AC3-Files|*.AC3|MPA-Files|*.MPA|All known files|*.AC3;*.MPA"
  135.   cd.FilterIndex = 3 //Pointer auf "All known files"
  136.   cd.Title = "Open Target File"
  137.   cd.Flags = cdoOverWritePrompt
  138.   cd.ShowSave
  139.   //
  140.   TargetFile$ = cd.FileName
  141.   //
  142.   If Not (TargetFile$ = "")
  143.     ed_Target.Text = TargetFile$
  144.   EndIf
  145.   Check_WriteButton
  146. End Sub
  147. Sub cmd_Write_Click
  148.   Local n% = 1
  149.   Local FileTyp As Integer
  150.   SourceFile$ = ed_Source.Text
  151.   TargetFile$ = ed_Target.Text
  152.   FileTyp = @GetFileTyp(SourceFile$)
  153.   If Exist(SourceFile$)
  154.     If Exist(TargetFile$)
  155.       Alert 1, "Target already exist. Overwrite?", 1, "OK|Cancel", n%
  156.     EndIf
  157.     If n% = 1
  158.       ed_Info.Text = ""
  159.       AnalyseSource(FileTyp)
  160.       WriteTarget(FileTyp)
  161.     EndIf
  162.   Else
  163.     Alert 3, "Source file does not exist.", 1, "OK", n%
  164.   EndIf
  165. End Sub
  166. >Sub AnalyseSource(FileTyp As Integer)
  167.   Local Dim h|(5)
  168.   Local n%, SourceLen% = 0
  169.   Local SourceLen As Large
  170.   //
  171.   Local syncword   As Integer
  172.   Local crc1       As Integer
  173.   Local fscod      As Byte
  174.   Local frmsizecod As Byte
  175.   //
  176.   Local MpegVers     As Integer
  177.   Local Layer        As Integer
  178.   Local Protect      As Integer
  179.   Local BitRateIndex As Integer
  180.   Local SamplingRate As Integer
  181.   Local Padding      As Integer
  182.   Local ChannelMode  As Integer
  183.   Local CopyRight    As Integer
  184.   Local Original     As Integer
  185.   Local Emphasis     As Integer
  186.   Local Rate%, SRate%
  187.   //
  188.   If FileTyp = AC3
  189.     //Lesen des ersten Headers
  190.     Open SourceFile$ for Input As # 1
  191.     SourceLen% = LOF(# 1)
  192.     SourceLen = SourceLen%
  193.     BGet # 1, V:h|(0), 5
  194.     Close # 1
  195.     //
  196.     syncword = h|(0) * 256 + h|(1)
  197.     crc1 = h|(2) * 256 + h|(3)
  198.     fscod = (h|(4) And %11000000) >> 6
  199.     frmsizecod = h|(4) And %00111111
  200.     //
  201.     ed_Info.Text = ""
  202.     AddInfo("Source file information:" + CR$ + CR$)
  203.     If syncword == $0B77
  204.       //Sampling rate
  205.       AddInfo("Sampling rate: ")
  206.       Select fscod
  207.       Case %00
  208.         AddInfo("48 ")
  209.       Case %01
  210.         AddInfo("44.1 ")
  211.       Case %10
  212.         AddInfo("32 ")
  213.       Case %11
  214.         AddInfo("reserved ")
  215.       EndSelect
  216.       AddInfo("kHz" + CR$)
  217.       //Nominal bit rate
  218.       AddBitrate(frmsizecod)
  219.       //FrameLength
  220.       GetFrameLength(fscod, frmsizecod)
  221.       If FrameLength > 0
  222.         FramesPerSecond = BitRate * 1000 / (FrameLength * 8)
  223.       EndIf
  224.       AddInfo("Framelength: 0x")
  225.       AddInfo(Hex$(FrameLength, 4) + CR$)
  226.       //Filelength
  227.       If FrameLength > 0
  228.         SourceLen% = SourceLen% / FrameLength
  229.         AddInfo("Length: " + Str$(SourceLen%) + "frames (" + @Frame2time(SourceLen%) + ")" + CR$)
  230.         If SourceLen Mod FrameLength > 0
  231.           AddInfo("WARNING> Filelength is not OK." + CR$ + "WARNING> Possible corrupted file or" + CR$ + "WARNING> last frame is too short." + CR$)
  232.         EndIf
  233.       EndIf
  234.       If FramesPerSecond == 1
  235.         AddInfo("There is 1 frame in one second." + CR$)
  236.       Else
  237.         AddInfo("There are " + Str$(FramesPerSecond) + " frames in one second." + CR$)
  238.       EndIf
  239.     Else
  240.       AddInfo("No AC3 information, or header corrupt.")
  241.     EndIf
  242.   EndIf
  243.   //
  244.   If FileTyp = MPA
  245.     If Exist(SourceFile$)
  246.       Open SourceFile$ for Input As # 1
  247.       SourceLen% = LOF(# 1)
  248.       SourceLen = SourceLen%
  249.       BGet # 1, V:h|(0), 5
  250.       Close # 1
  251.       //
  252.       MpegVers = (h|(1) And 24) >> 3
  253.       Layer = (h|(1) And 6) >> 1
  254.       Protect = h|(1) And 1
  255.       BitRateIndex = (h|(2) And 240) >> 4
  256.       SamplingRate = (h|(2) And 12) >> 2
  257.       Padding = (h|(2) And 2) >> 1
  258.       ChannelMode = (h|(3) And 192) >> 6
  259.       CopyRight = (h|(3) And 8) >> 3
  260.       Original = (h|(3) And 4) >> 2
  261.       Emphasis = (h|(3) And 3)
  262.       //
  263.       ed_Info.Text = ""
  264.       AddInfo("Source file information:" + CR$ + CR$)
  265.       AddInfo("MPEG Version: ")
  266.       Select MpegVers
  267.       Case 0
  268.         AddInfo("2.5" + CR$)
  269.       Case 1
  270.         AddInfo("reserved" + CR$)
  271.       Case 2
  272.         AddInfo("2" + CR$)
  273.       Case 3
  274.         AddInfo("1" + CR$)
  275.       Default
  276.         AddInfo("?" + CR$)
  277.       EndSelect
  278.       //
  279.       AddInfo("Layer: ")
  280.       Select Layer
  281.       Case 0
  282.         AddInfo("reserved" + CR$)
  283.       Case 1
  284.         AddInfo("3" + CR$)
  285.       Case 2
  286.         AddInfo("2" + CR$)
  287.       Case 3
  288.         AddInfo("1" + CR$)
  289.       Default
  290.         AddInfo("?" + CR$)
  291.       EndSelect
  292.       //
  293.       AddInfo("Protected: ")
  294.       Select Protect
  295.       Case 1
  296.         AddInfo("None" + CR$)
  297.       Default
  298.         AddInfo("CRC" + CR$)
  299.       EndSelect
  300.       //
  301.       Select BitRateIndex
  302.       Case 1
  303.         If MpegVers = 3 And Layer = 3 Then Rate% = 32000
  304.         If MpegVers = 3 And Layer = 2 Then Rate% = 32000
  305.         If MpegVers = 3 And Layer = 1 Then Rate% = 32000
  306.         If MpegVers = 2 And Layer = 3 Then Rate% = 32000
  307.         If MpegVers = 2 And Layer = 2 Then Rate% = 8000
  308.         If MpegVers = 2 And Layer = 1 Then Rate% = 8000
  309.       Case 2
  310.         If MpegVers = 3 And Layer = 3 Then Rate% = 64000
  311.         If MpegVers = 3 And Layer = 2 Then Rate% = 48000
  312.         If MpegVers = 3 And Layer = 1 Then Rate% = 40000
  313.         If MpegVers = 2 And Layer = 3 Then Rate% = 48000
  314.         If MpegVers = 2 And Layer = 2 Then Rate% = 16000
  315.         If MpegVers = 2 And Layer = 1 Then Rate% = 16000
  316.       Case 3
  317.         If MpegVers = 3 And Layer = 3 Then Rate% = 96000
  318.         If MpegVers = 3 And Layer = 2 Then Rate% = 56000
  319.         If MpegVers = 3 And Layer = 1 Then Rate% = 48000
  320.         If MpegVers = 2 And Layer = 3 Then Rate% = 56000
  321.         If MpegVers = 2 And Layer = 2 Then Rate% = 24000
  322.         If MpegVers = 2 And Layer = 1 Then Rate% = 24000
  323.       Case 4
  324.         If MpegVers = 3 And Layer = 3 Then Rate% = 128000
  325.         If MpegVers = 3 And Layer = 2 Then Rate% = 64000
  326.         If MpegVers = 3 And Layer = 1 Then Rate% = 56000
  327.         If MpegVers = 2 And Layer = 3 Then Rate% = 64000
  328.         If MpegVers = 2 And Layer = 2 Then Rate% = 32000
  329.         If MpegVers = 2 And Layer = 1 Then Rate% = 32000
  330.       Case 5
  331.         If MpegVers = 3 And Layer = 3 Then Rate% = 160000
  332.         If MpegVers = 3 And Layer = 2 Then Rate% = 80000
  333.         If MpegVers = 3 And Layer = 1 Then Rate% = 64000
  334.         If MpegVers = 2 And Layer = 3 Then Rate% = 80000
  335.         If MpegVers = 2 And Layer = 2 Then Rate% = 40000
  336.         If MpegVers = 2 And Layer = 1 Then Rate% = 40000
  337.       Case 6
  338.         If MpegVers = 3 And Layer = 3 Then Rate% = 192000
  339.         If MpegVers = 3 And Layer = 2 Then Rate% = 96000
  340.         If MpegVers = 3 And Layer = 1 Then Rate% = 80000
  341.         If MpegVers = 2 And Layer = 3 Then Rate% = 96000
  342.         If MpegVers = 2 And Layer = 2 Then Rate% = 48000
  343.         If MpegVers = 2 And Layer = 1 Then Rate% = 48000
  344.       Case 7
  345.         If MpegVers = 3 And Layer = 3 Then Rate% = 224000
  346.         If MpegVers = 3 And Layer = 2 Then Rate% = 112000
  347.         If MpegVers = 3 And Layer = 1 Then Rate% = 96000
  348.         If MpegVers = 2 And Layer = 3 Then Rate% = 112000
  349.         If MpegVers = 2 And Layer = 2 Then Rate% = 56000
  350.         If MpegVers = 2 And Layer = 1 Then Rate% = 56000
  351.       Case 8
  352.         If MpegVers = 3 And Layer = 3 Then Rate% = 256000
  353.         If MpegVers = 3 And Layer = 2 Then Rate% = 128000
  354.         If MpegVers = 3 And Layer = 1 Then Rate% = 112000
  355.         If MpegVers = 2 And Layer = 3 Then Rate% = 128000
  356.         If MpegVers = 2 And Layer = 2 Then Rate% = 64000
  357.         If MpegVers = 2 And Layer = 1 Then Rate% = 64000
  358.       Case 9
  359.         If MpegVers = 3 And Layer = 3 Then Rate% = 288000
  360.         If MpegVers = 3 And Layer = 2 Then Rate% = 160000
  361.         If MpegVers = 3 And Layer = 1 Then Rate% = 128000
  362.         If MpegVers = 2 And Layer = 3 Then Rate% = 144000
  363.         If MpegVers = 2 And Layer = 2 Then Rate% = 80000
  364.         If MpegVers = 2 And Layer = 1 Then Rate% = 80000
  365.       Case 10
  366.         If MpegVers = 3 And Layer = 3 Then Rate% = 320000
  367.         If MpegVers = 3 And Layer = 2 Then Rate% = 192000
  368.         If MpegVers = 3 And Layer = 1 Then Rate% = 160000
  369.         If MpegVers = 2 And Layer = 3 Then Rate% = 160000
  370.         If MpegVers = 2 And Layer = 2 Then Rate% = 96000
  371.         If MpegVers = 2 And Layer = 1 Then Rate% = 96000
  372.       Case 11
  373.         If MpegVers = 3 And Layer = 3 Then Rate% = 352000
  374.         If MpegVers = 3 And Layer = 2 Then Rate% = 224000
  375.         If MpegVers = 3 And Layer = 1 Then Rate% = 192000
  376.         If MpegVers = 2 And Layer = 3 Then Rate% = 176000
  377.         If MpegVers = 2 And Layer = 2 Then Rate% = 112000
  378.         If MpegVers = 2 And Layer = 1 Then Rate% = 112000
  379.       Case 12
  380.         If MpegVers = 3 And Layer = 3 Then Rate% = 384000
  381.         If MpegVers = 3 And Layer = 2 Then Rate% = 256000
  382.         If MpegVers = 3 And Layer = 1 Then Rate% = 224000
  383.         If MpegVers = 2 And Layer = 3 Then Rate% = 192000
  384.         If MpegVers = 2 And Layer = 2 Then Rate% = 128000
  385.         If MpegVers = 2 And Layer = 1 Then Rate% = 128000
  386.       Case 13
  387.         If MpegVers = 3 And Layer = 3 Then Rate% = 416000
  388.         If MpegVers = 3 And Layer = 2 Then Rate% = 320000
  389.         If MpegVers = 3 And Layer = 1 Then Rate% = 256000
  390.         If MpegVers = 2 And Layer = 3 Then Rate% = 224000
  391.         If MpegVers = 2 And Layer = 2 Then Rate% = 144000
  392.         If MpegVers = 2 And Layer = 1 Then Rate% = 144000
  393.       Case 14
  394.         If MpegVers = 3 And Layer = 3 Then Rate% = 448000
  395.         If MpegVers = 3 And Layer = 2 Then Rate% = 384000
  396.         If MpegVers = 3 And Layer = 1 Then Rate% = 320000
  397.         If MpegVers = 2 And Layer = 3 Then Rate% = 256000
  398.         If MpegVers = 2 And Layer = 2 Then Rate% = 160000
  399.         If MpegVers = 2 And Layer = 1 Then Rate% = 160000
  400.       EndSelect
  401.       AddInfo("Bitrate: " + Str$(Rate%) + CR$)
  402.       //
  403.       Select SamplingRate
  404.       Case 0
  405.         If MpegVers = 0 Then SRate% = 11025
  406.         If MpegVers = 2 Then SRate% = 22050
  407.         If MpegVers = 3 Then SRate% = 44100
  408.       Case 1
  409.         If MpegVers = 0 Then SRate% = 12000
  410.         If MpegVers = 2 Then SRate% = 24000
  411.         If MpegVers = 3 Then SRate% = 48000
  412.       Case 2
  413.         If MpegVers = 0 Then SRate% = 8000
  414.         If MpegVers = 2 Then SRate% = 16000
  415.         If MpegVers = 3 Then SRate% = 32000
  416.       EndSelect
  417.       AddInfo("Samplingrate: " + Str$(SRate%) + CR$)
  418.       //
  419.       AddInfo("Padding:")
  420.       If Padding = 1
  421.         AddInfo("On" + CR$)
  422.       Else
  423.         AddInfo("Off" + CR$)
  424.       EndIf
  425.       //
  426.       AddInfo("Mode: ")
  427.       Select ChannelMode
  428.       Case 0
  429.         AddInfo("Stereo" + CR$)
  430.       Case 1
  431.         AddInfo("Joint Stereo" + CR$)
  432.       Case 2
  433.         AddInfo("Dual Channel" + CR$)
  434.       Case 3
  435.         AddInfo("Single Channel" + CR$)
  436.       Default
  437.         AddInfo("?" + CR$)
  438.       EndSelect
  439.       //
  440.       AddInfo("Copyright: ")
  441.       If CopyRight = 0
  442.         AddInfo("No" + CR$)
  443.       Else
  444.         AddInfo("Yes" + CR$)
  445.       EndIf
  446.       //
  447.       AddInfo("Original: ")
  448.       If Original = 0
  449.         AddInfo("No" + CR$)
  450.       Else
  451.         AddInfo("Yes" + CR$)
  452.       EndIf
  453.       //
  454.       AddInfo("Emphasis: ")
  455.       Select Emphasis
  456.       Case 0
  457.         AddInfo("None" + CR$)
  458.       Case 1
  459.         AddInfo("50/15 ms" + CR$)
  460.       Case 3
  461.         AddInfo("CCIT J.17" + CR$)
  462.       EndSelect
  463.       //
  464.       If SRate% > 0
  465.         Select Layer
  466.         Case 3
  467.           FrameLength = 12 * Rate% / SRate%
  468.         Case 2
  469.           FrameLength = 144 * Rate% / SRate%
  470.         Case 1
  471.           FrameLength = 144 * Rate% / SRate%
  472.         EndSelect
  473.         AddInfo("Framelength: " + Str$(FrameLength) + CR$)
  474.       EndIf
  475.       AddInfo(CR$)
  476.       FramesPerSecond = Rate% / (FrameLength * 8)
  477.       //
  478.     EndIf
  479.   EndIf
  480.   Erase SilentFrame|()
  481.   Global Dim SilentFrame|(FrameLength)
  482.   GenerateStillFrame(FileTyp, h|(4))
  483. End Sub
  484. Sub GenerateStillFrame(FileTyp As Integer, AudioInfo As Byte)
  485.   Local Integer i
  486.   //
  487.   SilentFrameOK? = False
  488.   If chk_AddSilent.Value == 1
  489.     If FileTyp == AC3
  490.       Select AudioInfo
  491.       Case 0x14
  492.         Restore AC3_192kbps_48kHz
  493.         SilentFrameOK? = True
  494.       Case 0x1C
  495.         Restore AC3_384kbps_48kHz
  496.         SilentFrameOK? = True
  497.       Case 0x1E
  498.         Restore AC3_448kbps_48kHz
  499.         SilentFrameOK? = True
  500.       EndSelect
  501.     EndIf
  502.     If SilentFrameOK?
  503.       For i = 0 To FrameLength - 1
  504.         Read SilentFrame|(i)
  505.       Next i
  506.     EndIf
  507.   EndIf
  508.   //
  509.   AC3_192kbps_48kHz:
  510.   Data 0x0B, 0x77, 0x52, 0x2C, 0x14, 0x40, 0x53, 0x7F, 0xF3, 0x06, 0xF5, 0x65, 0xFF, 0x0F, 0x0F, 0xE1
  511.   Data 0xE1, 0x05, 0x71, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C
  512.   Data 0xF9, 0xF3, 0xE7, 0xCF, 0xBF, 0xE7, 0x57, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F
  513.   Data 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C
  514.   Data 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3
  515.   Data 0xE7, 0xCF, 0xBF, 0xF9, 0xD5, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F
  516.   Data 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C
  517.   Data 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3
  518.   Data 0xEF, 0x29, 0xF0, 0xE4, 0xC9, 0x92, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC6, 0xDB, 0x6D, 0xB6, 0xDB
  519.   Data 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  520.   Data 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A
  521.   Data 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x00, 0x00, 0x00, 0x03, 0xC6, 0xDB
  522.   Data 0x6D, 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  523.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5
  524.   Data 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x60, 0x00, 0x00
  525.   Data 0x00, 0x00, 0x00, 0x3C, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1D, 0xDD, 0xDD, 0xDD
  526.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C, 0x78, 0xDB, 0x6D, 0xBE
  527.   Data 0x7C, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A
  528.   Data 0xD6, 0xB5, 0xA0, 0x00, 0x00, 0x00, 0x3C, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1D
  529.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C, 0x78
  530.   Data 0xDB, 0x6D, 0xBE, 0x7C, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5
  531.   Data 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xA6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC6, 0xDB, 0x6D, 0xB6
  532.   Data 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  533.   Data 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B
  534.   Data 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x00, 0x00, 0x00, 0x03, 0xC6
  535.   Data 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  536.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6
  537.   Data 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x60, 0x00
  538.   Data 0x00, 0x00, 0x00, 0x00, 0x3C, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1D, 0xDD, 0xDD
  539.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C, 0x78, 0xDB, 0x6D
  540.   Data 0xBE, 0x7C, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B
  541.   Data 0x5A, 0xD6, 0xB5, 0xA0, 0x00, 0x00, 0x00, 0x3C, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F
  542.   Data 0x1D, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C
  543.   Data 0x78, 0xDB, 0x6D, 0xBE, 0x7C, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6
  544.   Data 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xA6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC6, 0xDB, 0x6D
  545.   Data 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  546.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD
  547.   Data 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x00, 0x00, 0x00, 0x03
  548.   Data 0xC6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  549.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A
  550.   Data 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x60
  551.   Data 0x00, 0x20, 0x50, 0x0B, 0xB2, 0x39, 0x94, 0xF0, 0x00, 0x00, 0x00, 0x1E, 0x36, 0xDB, 0x6D, 0xB6
  552.   Data 0xDB, 0x6D, 0xE3, 0xC7, 0x8E, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  553.   Data 0xEE, 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A
  554.   Data 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD0, 0x00, 0x00, 0x00, 0x1E, 0x36
  555.   Data 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xE3, 0xC7, 0x8E, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  556.   Data 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B, 0x5A, 0xD6, 0xB5
  557.   Data 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD0, 0x51, 0xD3
  558.   AC3_384kbps_48kHz:
  559.   Data 0x0B, 0x77, 0x46, 0xEE, 0x1C, 0x40, 0xE1, 0xFC, 0x41, 0xCB, 0x80, 0x7E, 0x41, 0xFD, 0xA9, 0x68
  560.   Data 0x40, 0x41, 0xE0, 0x41, 0x08, 0x08, 0x3C, 0x08, 0x21, 0x01, 0x07, 0x81, 0x04, 0x20, 0x20, 0x20
  561.   Data 0x20, 0x84, 0x04, 0x1E, 0x04, 0x0A, 0xAB, 0xC7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF
  562.   Data 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E
  563.   Data 0xFF, 0x9D, 0x5F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF
  564.   Data 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E
  565.   Data 0xFF, 0xE7, 0x57, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3
  566.   Data 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF
  567.   Data 0xBF, 0xF9, 0xD5, 0xF3, 0xE7, 0xCF, 0x9E, 0xD7, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C
  568.   Data 0xF9, 0xF3, 0xE7, 0xCE, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE4, 0x4F, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3
  569.   Data 0xEF, 0xFE, 0x59, 0x7B, 0x5C, 0xB3, 0xE7, 0xB5, 0xDF, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F
  570.   Data 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xD3, 0xE7, 0xC5, 0x9F, 0x3E, 0x7C
  571.   Data 0xFB, 0xFF, 0x9D, 0x5F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7
  572.   Data 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F
  573.   Data 0x3E, 0xFF, 0xE7, 0x5C, 0xA7, 0xC3, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x80, 0x00, 0x00, 0x00
  574.   Data 0x00, 0xDF, 0x36, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  575.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C, 0x78, 0xDB, 0x6D, 0xBE, 0x7C, 0xD6
  576.   Data 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x00, 0x00
  577.   Data 0x00, 0x03, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x78, 0xF1, 0xE3, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB
  578.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBC, 0x78, 0xF1, 0xB6, 0xDB, 0x7C, 0xF9, 0xAD
  579.   Data 0x6B, 0x5A, 0xD6, 0xB4, 0x00, 0x02, 0x00, 0x06, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB7, 0x78, 0xF1
  580.   Data 0xE3, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBC, 0x78
  581.   Data 0xF1, 0xB6, 0xDD, 0xBE, 0x7C, 0xD6, 0xB5, 0xA4, 0x6D, 0x6B, 0x40, 0x00, 0x00, 0x00, 0xB4, 0x36
  582.   Data 0xDE, 0x36, 0xC0, 0xDB, 0x6D, 0xB0, 0x78, 0xF1, 0xE3, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB
  583.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBC, 0x78, 0xF1, 0xB6, 0xDB, 0x7C, 0xF9, 0xAD, 0x6B, 0x48
  584.   Data 0xD6, 0xB6, 0x80, 0x00, 0x00, 0x00, 0xDF, 0x36, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xBC, 0x78, 0xF1
  585.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDE, 0x3C, 0x78
  586.   Data 0xDB, 0x6D, 0xBE, 0x7C, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0x00, 0x00, 0x00, 0x03, 0x60, 0xF8, 0x00
  587.   Data 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xF9, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xE3, 0xC7, 0x8E
  588.   Data 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xF1, 0xE3, 0xC6
  589.   Data 0xDB, 0x6D, 0xF3, 0xE6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD
  590.   Data 0x6B, 0x5A, 0xD0, 0x00, 0x00, 0x00, 0x1B, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1D
  591.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D
  592.   Data 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xA0, 0x00, 0x00, 0x00, 0x36, 0xDB, 0x6D, 0xB6
  593.   Data 0xDB, 0x6D, 0x83, 0xC7, 0x8F, 0x1D, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  594.   Data 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0x0D, 0xF3, 0xE6, 0xB5, 0xAD, 0x6D, 0x6B, 0x5A, 0x00
  595.   Data 0x00, 0x00, 0x03, 0x81, 0xB6, 0x15, 0xB6, 0x86, 0xDB, 0x6D, 0xBB, 0xC7, 0x8F, 0x1D, 0xDD, 0xDD
  596.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB
  597.   Data 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB6, 0xB4, 0x00, 0x00, 0x00, 0x06, 0xF9, 0xB6, 0xDB, 0x6D, 0xB6
  598.   Data 0xDB, 0x6D, 0xE3, 0xC7, 0x8E, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  599.   Data 0xEE, 0xEE, 0xF1, 0xE3, 0xC6, 0xDB, 0x6D, 0xF3, 0xE6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD0, 0x00, 0x00
  600.   Data 0x00, 0x1B, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x37, 0xCD, 0xB6, 0xDB, 0x6D, 0xB6
  601.   Data 0xDB, 0x6F, 0x1E, 0x3C, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77
  602.   Data 0x77, 0x77, 0x8F, 0x1E, 0x36, 0xDB, 0x6F, 0x9F, 0x35, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B
  603.   Data 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0x80, 0x00, 0x00, 0x00, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D
  604.   Data 0xB6, 0xDE, 0x3C, 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  605.   Data 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x00, 0x00, 0x00
  606.   Data 0x01, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xDE, 0x3C, 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  607.   Data 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB7, 0x6F, 0x9F, 0x35, 0xAD
  608.   Data 0x6B, 0x5B, 0x5A, 0xD0, 0x03, 0xF8, 0x00, 0x1C, 0x0D, 0xB7, 0x8D, 0xB4, 0x36, 0xDB, 0x6D, 0xDE
  609.   Data 0x3C, 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF
  610.   Data 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0xA0, 0x00, 0x00, 0x00, 0x37
  611.   Data 0xCD, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6F, 0x1E, 0x3C, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77
  612.   Data 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x8F, 0x1E, 0x36, 0xDB, 0x6F, 0x9F, 0x35, 0xAD, 0x6B
  613.   Data 0x5A, 0xD6, 0x80, 0x00, 0x00, 0x00, 0xD8, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xBE
  614.   Data 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x78, 0xF1, 0xE3, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB
  615.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBC, 0x78, 0xF1, 0xB6, 0xDB, 0x7C, 0xF9, 0xAD, 0x6B, 0x5A
  616.   Data 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB4, 0x00, 0x00, 0x00, 0x06
  617.   Data 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xF1, 0xE3, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77
  618.   Data 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0xF1, 0xE3, 0x6D, 0xB6, 0xF9, 0xF3, 0x5A, 0xD6, 0xB5
  619.   Data 0xAD, 0x68, 0x00, 0x04, 0x00, 0x0D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6E, 0xF1, 0xE3, 0xC7, 0x77
  620.   Data 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x78, 0xF1, 0xE3, 0x6D
  621.   Data 0xBB, 0x7C, 0xF9, 0xAD, 0x6B, 0x48, 0xDA, 0xD6, 0x80, 0x00, 0x00, 0x01, 0x68, 0x6D, 0xBC, 0x6D
  622.   Data 0x81, 0xB6, 0xDB, 0x60, 0xF1, 0xE3, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77
  623.   Data 0x77, 0x77, 0x77, 0x77, 0x78, 0xF1, 0xE3, 0x6D, 0xB6, 0xF9, 0xF3, 0x5A, 0xD6, 0x91, 0xAD, 0x6D
  624.   Data 0x00, 0x00, 0x00, 0x01, 0xBE, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x78, 0xF1, 0xE3, 0xBB, 0xBB
  625.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBC, 0x78, 0xF1, 0xB6, 0xDB
  626.   Data 0x7C, 0xF9, 0xAD, 0x6B, 0x5A, 0xD6, 0xB4, 0x00, 0x00, 0x00, 0x06, 0xC1, 0xF0, 0x00, 0x00, 0x00
  627.   Data 0x00, 0x00, 0x00, 0x0D, 0xF3, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1D, 0xDD, 0xDD
  628.   Data 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xE3, 0xC7, 0x8D, 0xB6, 0xDB
  629.   Data 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5
  630.   Data 0xA0, 0x00, 0x00, 0x00, 0x36, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB7, 0x8F, 0x1E, 0x3B, 0xBB, 0xBB
  631.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xC7, 0x8F, 0x1B, 0x6D, 0xB7
  632.   Data 0xCF, 0x9A, 0xD6, 0xB5, 0xAD, 0x6B, 0x40, 0x00, 0x00, 0x00, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB
  633.   Data 0x07, 0x8F, 0x1E, 0x3B, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB
  634.   Data 0xBB, 0xC7, 0x8F, 0x1B, 0x6C, 0x1B, 0xE7, 0xCD, 0x6B, 0x5A, 0xDA, 0xD6, 0xB4, 0x00, 0x00, 0x00
  635.   Data 0x07, 0x03, 0x6C, 0x2B, 0x6D, 0x0D, 0xB6, 0xDB, 0x77, 0x8F, 0x1E, 0x3B, 0xBB, 0xBB, 0xBB, 0xBB
  636.   Data 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xC7, 0x8F, 0x1B, 0x6D, 0xB7, 0xCF, 0x9A
  637.   Data 0xD6, 0xB5, 0xAD, 0x6D, 0x68, 0x00, 0x00, 0x00, 0x0D, 0xF3, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB
  638.   Data 0xC7, 0x8F, 0x1D, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD
  639.   Data 0xE3, 0xC7, 0x8D, 0xB6, 0xDB, 0xE7, 0xCD, 0x6B, 0x5A, 0xD6, 0xB5, 0xA0, 0x00, 0x00, 0x00, 0x36
  640.   Data 0x0F, 0x80, 0x00, 0x00, 0x43, 0x00, 0x0C, 0x18, 0xCE, 0x3A, 0x50, 0x1A, 0x2F, 0x71, 0x5C, 0x32
  641.   Data 0x47, 0xD9, 0xF6, 0x5E, 0xED, 0x62, 0x24, 0xBE, 0x36, 0x18, 0x0D, 0x2E, 0x37, 0xC0, 0x00, 0x00
  642.   Data 0x00, 0x37, 0xCD, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6F, 0x1E, 0x3C, 0x77, 0x77, 0x77, 0x77, 0x77
  643.   Data 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x8F, 0x1E, 0x36, 0xDB, 0x6F, 0x9F, 0x35
  644.   Data 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0xB5, 0xAD, 0x6B, 0x5A, 0xD6, 0x80, 0x00
  645.   Data 0x00, 0x00, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB6, 0xDE, 0x3C, 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  646.   Data 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B
  647.   Data 0x5A, 0xD6, 0xB5, 0xAD, 0x00, 0x00, 0x00, 0x01, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6D, 0xDE, 0x3C
  648.   Data 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x1E
  649.   Data 0x3C, 0x6D, 0xB7, 0x6F, 0x9F, 0x35, 0xAD, 0x6B, 0x5B, 0x5A, 0xD0, 0x03, 0xF8, 0x00, 0x1C, 0x0D
  650.   Data 0xB7, 0x8D, 0xB4, 0x36, 0xDB, 0x6D, 0xDE, 0x3C, 0x78, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE
  651.   Data 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x1E, 0x3C, 0x6D, 0xB6, 0xDF, 0x3E, 0x6B, 0x5A, 0xD6
  652.   Data 0xB5, 0xAD, 0xA0, 0x00, 0x00, 0x00, 0x37, 0xCD, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0x6F, 0x1E, 0x3C
  653.   Data 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x8F, 0x1E
  654.   Data 0x36, 0xDB, 0x6F, 0x9F, 0x35, 0xAD, 0x6B, 0x5A, 0xD6, 0x80, 0x00, 0x00, 0x00, 0xD8, 0x16, 0xFE
  655.   AC3_448kbps_48kHz:
  656.   Data 0x0B, 0x77, 0x9E, 0xCC, 0x1E, 0x40, 0xE1, 0xDE, 0xAC, 0xC0, 0x3F, 0xC4, 0xFF, 0x59, 0x70, 0x83
  657.   Data 0xC2, 0x10, 0x1B, 0xC2, 0x02, 0x08, 0x40, 0x6F, 0x08, 0x0C, 0x15, 0x57, 0x8F, 0x9F, 0x3E, 0x7C
  658.   Data 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7D, 0x7D, 0xF1
  659.   Data 0xF3, 0xD0, 0xF9, 0xF3, 0xE7, 0xCF, 0x38, 0x3E, 0x7C, 0xF9, 0xF3, 0xE6, 0xCA, 0x9F, 0x3E, 0x6B
  660.   Data 0x5A, 0xBB, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x95, 0x2A, 0x7C, 0xF9, 0x13
  661.   Data 0x67, 0x9C, 0x1F, 0x3E, 0x7C, 0xF3, 0x81, 0x62, 0x4F, 0x9F, 0x36, 0x75, 0xD7, 0x7C, 0x7E, 0x67
  662.   Data 0xBC, 0xE0, 0xF9, 0xD1, 0x67, 0x4F, 0x36, 0x3E, 0x6C, 0xF9, 0x51, 0x4D, 0x0F, 0x38, 0x2A, 0x7C
  663.   Data 0xA6, 0x9B, 0xE2, 0xC5, 0x9F, 0x2A, 0x79, 0x71, 0xF3, 0xCE, 0x0E, 0x91, 0x16, 0x79, 0xB0, 0xB0
  664.   Data 0xCB, 0x6E, 0x73, 0x40, 0x74, 0x53, 0x83, 0xA4, 0x4A, 0x9E, 0x7D, 0xDF, 0x1B, 0xD9, 0xE5, 0x89
  665.   Data 0x3E, 0x74, 0x59, 0xF2, 0x8D, 0x8A, 0x9F, 0x16, 0x6C, 0x53, 0x83, 0xE7, 0xC5, 0x9F, 0x3E, 0x6C
  666.   Data 0xF9, 0xF3, 0xCE, 0x0F, 0x9F, 0x16, 0x7C, 0xF2, 0x43, 0xE7, 0xC4, 0x61, 0x92, 0x29, 0xBB, 0x82
  667.   Data 0x27, 0x9B, 0xE7, 0x92, 0x6A, 0xFD, 0xF3, 0xE7, 0x3E, 0xF7, 0xC6, 0xB7, 0x43, 0xE7, 0x4F, 0x38
  668.   Data 0x3D, 0xAE, 0xA9, 0xF3, 0xDA, 0xEA, 0x9F, 0x16, 0x2C, 0xF9, 0xB2, 0x8E, 0x0F, 0x9F, 0x2A, 0x2C
  669.   Data 0xF9, 0xF1, 0x67, 0x4F, 0x8B, 0x3E, 0x2C, 0xF9, 0xF3, 0xE7, 0xB0, 0xDF, 0x3D, 0x9A, 0xFD, 0x6F
  670.   Data 0x07, 0xCD, 0x38, 0x3E, 0x7C, 0xF9, 0xB7, 0xBD, 0xF1, 0xAD, 0xE0, 0xF8, 0x71, 0x67, 0xCA, 0x69
  671.   Data 0xBE, 0x7C, 0x59, 0xF3, 0xE6, 0xCA, 0x9F, 0x3E, 0x6C, 0xF8, 0xB3, 0xA6, 0xCF, 0x6B, 0xBA, 0x7C
  672.   Data 0x59, 0xD3, 0xCE, 0x0D, 0x9F, 0x3E, 0x7C, 0x59, 0x12, 0xA7, 0xB5, 0x77, 0x6F, 0xAB, 0xBB, 0x83
  673.   Data 0x64, 0xCE, 0x9F, 0x3E, 0x7D, 0xDF, 0x7C, 0x79, 0x5F, 0x80, 0x20, 0x40, 0x81, 0x02, 0x04, 0x09
  674.   Data 0x00, 0x67, 0x73, 0x22, 0x34, 0xA1, 0x32, 0x00, 0x20, 0x1B, 0x5D, 0xDF, 0x3E, 0x7C, 0xDB, 0x6C
  675.   Data 0x0D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xC0, 0xDD, 0xB6, 0xDB, 0x6D, 0xA1, 0xE3, 0xE6
  676.   Data 0xF9, 0xAD, 0x6B, 0x5A, 0xF9, 0xB6, 0xD6, 0xE0, 0x56, 0x1F, 0x39, 0x00, 0xA4, 0x8E, 0x04, 0x08
  677.   Data 0xED, 0xAE, 0xFA, 0xDF, 0x3E, 0x6C, 0x0D, 0xB7, 0x6D, 0x81, 0xE0, 0x1E, 0x3C, 0x01, 0xE3, 0xC7
  678.   Data 0x6C, 0x0C, 0x0C, 0x0D, 0xB0, 0x36, 0xDB, 0xE7, 0xCD, 0x6B, 0x6B, 0xE4, 0xB1, 0xF3, 0x6D, 0xAD
  679.   Data 0xD6, 0xDB, 0x6C, 0xAD, 0xEA, 0xBE, 0x7C, 0x19, 0x47, 0x8D, 0x0D, 0x77, 0x7C, 0xED, 0xF3, 0x60
  680.   Data 0x6D, 0xB6, 0xEC, 0x0F, 0x00, 0x07, 0x8F, 0x1E, 0x00, 0xF1, 0xA1, 0xA1, 0x81, 0xB6, 0xDB, 0x6D
  681.   Data 0xBB, 0xE7, 0xCD, 0x6B, 0x5A, 0xFD, 0xAC, 0xAE, 0xDB, 0xAD, 0xAD, 0xB1, 0x70, 0xFB, 0x14, 0xED
  682.   Data 0x70, 0x0D, 0xDA, 0xEE, 0xF9, 0xBE, 0x03, 0x6D, 0xB7, 0x6D, 0xBB, 0x6F, 0x1E, 0x3C, 0x03, 0xC8
  683.   Data 0x3C, 0x6D, 0xA1, 0xB0, 0x36, 0xDB, 0x60, 0x61, 0xDF, 0x35, 0xAD, 0xAD, 0x7C, 0xC6, 0xB6, 0xDB
  684.   Data 0x75, 0xB8, 0x50, 0x84, 0x83, 0x74, 0xB0, 0x06, 0xEE, 0xD7, 0xCE, 0xE8, 0x7C, 0xDB, 0x78, 0xDD
  685.   Data 0xBB, 0x6D, 0xBC, 0x01, 0xE3, 0xC7, 0x8F, 0x18, 0x1B, 0xB6, 0xDB, 0x6D, 0xB0, 0x37, 0xCE, 0xF9
  686.   Data 0xAF, 0x1A, 0xD6, 0x3E, 0x6B, 0x5B, 0x6D, 0xB6, 0x4F, 0xC3, 0xB3, 0x4F, 0x3B, 0x99, 0x4F, 0x80
  687.   Data 0x07, 0xCF, 0xE1, 0xE1, 0x7C, 0x01, 0x21, 0x01, 0x07, 0xF0, 0xF0, 0xFE, 0x1E, 0x00, 0x00, 0x03
  688.   Data 0x26, 0x99, 0x41, 0x9A, 0x09, 0x10, 0x01, 0x00, 0xDA, 0xEE, 0xF9, 0xF3, 0xE6, 0xDB, 0x60, 0x6D
  689.   Data 0xB6, 0xDE, 0x3C, 0x78, 0xF1, 0xE3, 0xC6, 0x06, 0x0D, 0xB6, 0xDB, 0x6C, 0x0F, 0x1F, 0x37, 0xED
  690.   Data 0x6B, 0x5A, 0xD7, 0xCD, 0xD6, 0xB6, 0xD5, 0x31, 0x59, 0xBC, 0x85, 0x04, 0x40, 0x20, 0x07, 0x6D
  691.   Data 0xB7, 0xCE, 0xF9, 0xF3, 0x60, 0x6D, 0xBB, 0x6F, 0x0F, 0x00, 0xF1, 0xE0, 0x0F, 0x1E, 0x3B, 0x60
  692.   Data 0x60, 0x68, 0x6D, 0x81, 0xB6, 0xDF, 0x3C, 0x6B, 0x5B, 0x6B, 0xB5, 0xB0, 0xEB, 0x69, 0xAD, 0xB7
  693.   Data 0x5B, 0x6B, 0x6E, 0xF6, 0x03, 0xD0, 0xCA, 0x3C, 0x6B, 0x6D, 0x9B, 0xE7, 0x6F, 0x9B, 0x03, 0x6D
  694.   Data 0xB7, 0x60, 0x78, 0x00, 0x3C, 0x78, 0xF0, 0x07, 0x8C, 0x0C, 0x0D, 0x0D, 0xB6, 0xDB, 0x6D, 0xDF
  695.   Data 0x3E, 0x6B, 0x5B, 0x07, 0x2D, 0x53, 0xE7, 0x5B, 0x64, 0x6C, 0x8E, 0x87, 0xA8, 0xD7, 0x6B, 0x9C
  696.   Data 0x6E, 0xD7, 0x77, 0xCD, 0xF2, 0x1B, 0x6D, 0x83, 0x6D, 0xDB, 0x78, 0xF1, 0xE0, 0x1E, 0x01, 0xE3
  697.   Data 0x6C, 0x0D, 0x81, 0xB6, 0xDB, 0x03, 0x0E, 0xF9, 0xAD, 0x6B, 0x6B, 0xE9, 0x91, 0xB6, 0xDD, 0x76
  698.   Data 0xC4, 0x24, 0x04, 0x33, 0xB5, 0x80, 0x33, 0xB6, 0xBE, 0x77, 0xC3, 0xE6, 0xDB, 0xC6, 0x0D, 0xDB
  699.   Data 0x6D, 0xE0, 0x0F, 0x1E, 0x3C, 0x78, 0xC0, 0xDD, 0xB6, 0xDB, 0x6D, 0xA1, 0xBE, 0x77, 0xCD, 0xBA
  700.   Data 0xD6, 0xB5, 0xF3, 0x5A, 0xDB, 0x6D, 0xB3, 0x70, 0x11, 0x99, 0x55, 0xB4, 0xC2, 0x70, 0x00, 0x3F
  701.   Data 0xC5, 0x42, 0x03, 0x78, 0x40, 0x6F, 0x08, 0x08, 0x21, 0x01, 0x04, 0x20, 0x37, 0x00, 0x00, 0x18
  702.   Data 0x90, 0xCB, 0x6C, 0x78, 0x48, 0x7C, 0x08, 0x00, 0xD7, 0x77, 0xCF, 0x9F, 0x36, 0xDB, 0x43, 0x6D
  703.   Data 0xB6, 0xF1, 0xE3, 0xC7, 0x8F, 0x1E, 0x34, 0x37, 0x6D, 0xB6, 0xDB, 0x60, 0x0A, 0xF9, 0xBE, 0x6B
  704.   Data 0x5A, 0xD2, 0x5C, 0xB5, 0xA9, 0xB5, 0x49, 0x8D, 0xAD, 0x8C, 0x28, 0x22, 0x01, 0x80, 0x18, 0x6B
  705.   Data 0xBE, 0x77, 0xCF, 0x9B, 0x43, 0x6D, 0xDB, 0x60, 0x78, 0x07, 0x8F, 0x00, 0x78, 0xF1, 0xDB, 0x03
  706.   Data 0x03, 0x03, 0x6C, 0x0D, 0xB0, 0xF8, 0x63, 0x5A, 0xDA, 0xF9, 0xAA, 0xAE, 0xDB, 0x23, 0xAD, 0xB7
  707.   Data 0x6B, 0x5B, 0x74, 0xB0, 0x5D, 0x86, 0x41, 0xE3, 0x5B, 0x5D, 0xDF, 0x3B, 0x7C, 0xD8, 0x1B, 0x6D
  708.   Data 0xBB, 0x43, 0xC8, 0x41, 0xE3, 0xC7, 0x88, 0x3C, 0x60, 0x60, 0x60, 0x6D, 0xB6, 0xDB, 0x76, 0xF9
  709.   Data 0xF3, 0x5A, 0xD8, 0x57, 0x69, 0x1F, 0x57, 0x5D, 0x6B, 0x1C, 0x8A, 0x3B, 0xC7, 0xBB, 0x5C, 0xE3
  710.   Data 0x76, 0xBB, 0xBE, 0x0F, 0x80, 0xDB, 0x6D, 0xDB, 0x6E, 0xDB, 0xC7, 0x8F, 0x00, 0xF0, 0x0F, 0x1B
  711.   Data 0x60, 0x6D, 0x0D, 0xB6, 0xD8, 0x1B, 0x77, 0xCD, 0x6B, 0x5B, 0x5F, 0x35, 0xB5, 0xB7, 0x5B, 0x6E
  712.   Data 0x2D, 0x1F, 0x62, 0x9D, 0xAE, 0x71, 0xBB, 0xB5, 0xF3, 0xB8, 0x1F, 0x36, 0xC2, 0xB7, 0x6E, 0xDB
  713.   Data 0x6F, 0x10, 0x78, 0xF1, 0xE3, 0xC6, 0x06, 0xED, 0xB6, 0xDB, 0x6C, 0x0D, 0xF3, 0xBE, 0x6B, 0xC6
  714.   Data 0xB5, 0xAF, 0x9A, 0x46, 0xDD, 0x6D, 0x9E, 0xA1, 0x0B, 0x49, 0xAF, 0xA5, 0xD0, 0x00, 0x01, 0xF2
  715.   Data 0xF8, 0x01, 0x5F, 0x00, 0xA9, 0xE0, 0x41, 0x7C, 0x02, 0xA1, 0x07, 0x80, 0x00, 0x02, 0x1C, 0x00
  716.   Data 0x19, 0xF1, 0x9E, 0x4D, 0xCE, 0xAE, 0xB0, 0xD0, 0x18, 0x83, 0x2F, 0x24, 0xE8, 0x21, 0x8A, 0x78
  717.   Data 0x2C, 0x38, 0x33, 0xFE, 0xD6, 0x78, 0x99, 0xE5, 0xD4, 0x92, 0x2C, 0x5F, 0xD3, 0x32, 0xB0, 0xC1
  718.   Data 0x21, 0xE0, 0x20, 0x1B, 0x5D, 0xDF, 0x3E, 0x7C, 0xDB, 0x6C, 0x0D, 0xB6, 0xDB, 0xC7, 0x8F, 0x1E
  719.   Data 0x3C, 0x78, 0xC0, 0xDD, 0xB6, 0xDB, 0x6D, 0x81, 0xBB, 0xE0, 0xF9, 0xAD, 0x6B, 0x52, 0x95, 0xD6
  720.   Data 0x4A, 0xCF, 0xC6, 0x42, 0xB4, 0xD0, 0x98, 0x82, 0x04, 0x00, 0x61, 0xAE, 0xF9, 0xDF, 0x3E, 0x6C
  721.   Data 0x0D, 0xB7, 0x6D, 0x81, 0xE4, 0x1E, 0x3C, 0x41, 0xE3, 0xC7, 0x6C, 0x0C, 0x0C, 0x0D, 0xB4, 0x36
  722.   Data 0xDB, 0xE7, 0xCD, 0x6D, 0x6B, 0xF6, 0xB5, 0xF3, 0x75, 0xAD, 0xBA, 0xDB, 0x64, 0x6D, 0xC6, 0xC3
  723.   Data 0x74, 0x19, 0x07, 0x8D, 0x6D, 0x77, 0x7C, 0xED, 0xF3, 0x68, 0x6D, 0xB6, 0xEC, 0x0F, 0x00, 0x07
  724.   Data 0x8F, 0x1E, 0x00, 0xF1, 0x81, 0x81, 0x81, 0xB6, 0xDB, 0x6D, 0xBB, 0xE7, 0xCD, 0x6B, 0x5A, 0xF9
  725.   Data 0xA4, 0x7C, 0xDB, 0x75, 0xAD, 0xB2, 0x84, 0xE7, 0x24, 0xED, 0x73, 0x8E, 0xDB, 0x6E, 0xF9, 0xBE
  726.   Data 0x03, 0x6D, 0xB7, 0x6D, 0x83, 0x6F, 0x1E, 0x3C, 0x03, 0xC0, 0x3C, 0x6D, 0x81, 0xB0, 0x36, 0xDB
  727.   Data 0x68, 0x6E, 0xDF, 0x35, 0xAD, 0x6D, 0xAE, 0xD5, 0x3A, 0x4B, 0x6D, 0xB8, 0xE4, 0x7A, 0x8C, 0x76
  728.   Data 0xB9, 0xC6, 0xEE, 0xD7, 0xCE, 0xE0, 0x7C, 0xDB, 0x78, 0xDD, 0xBB, 0x6D, 0xBC, 0x01, 0xE3, 0xC7
  729.   Data 0x8F, 0x18, 0x1B, 0xB6, 0xDB, 0x6D, 0xB4, 0x37, 0xCE, 0xD5, 0xAF, 0x1A, 0x46, 0xBE, 0xB2, 0x9D
  730.   Data 0x6D, 0xB6, 0x75, 0x03, 0x25, 0x4A, 0xBC, 0x58, 0x8F, 0x18, 0x07, 0xF8, 0xC8, 0x41, 0xE1, 0x08
  731.   Data 0x08, 0x21, 0x01, 0x84, 0x20, 0xF0, 0x84, 0x06, 0xE0, 0x00, 0x09, 0x28, 0x01, 0x74, 0x60, 0xD1
  732.   Data 0x72, 0x56, 0x40, 0x3E, 0x66, 0xFC, 0xB7, 0x4D, 0x4C, 0x2B, 0x80, 0xC3, 0xEA, 0x96, 0x5F, 0x5F
  733.   Data 0xFB, 0x09, 0x11, 0xDB, 0x3E, 0x43, 0x56, 0xFB, 0x74, 0xF8, 0xF1, 0x7E, 0x63, 0xF9, 0x9C, 0x25
  734.   Data 0xC3, 0xFD, 0x21, 0xB3, 0x55, 0xC3, 0x34, 0xE4, 0xDE, 0x0F, 0x9C, 0x78, 0x19, 0x9E, 0x1F, 0x32
  735.   Data 0xC5, 0x2E, 0x6F, 0xCE, 0xA9, 0x84, 0x55, 0x0D, 0x83, 0x63, 0x8D, 0xB5, 0x0F, 0x83, 0xDC, 0x7F
  736.   Data 0x0E, 0xA0, 0xFC, 0x29, 0x41, 0x89, 0x75, 0x8C, 0xDE, 0xBE, 0x04, 0x47, 0x40, 0x80, 0x6D, 0x7B
  737.   Data 0x7C, 0xF9, 0xF3, 0x6D, 0xB0, 0x36, 0xDB, 0x6F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xC3, 0x76, 0xDB
  738.   Data 0x6D, 0xB6, 0x07, 0x8F, 0x9B, 0xE6, 0xB5, 0xAD, 0x6B, 0xE6, 0xDB, 0x5B, 0x2A, 0x19, 0x36, 0xCE
  739.   Data 0x02, 0x51, 0xF8, 0x10, 0x03, 0xB6, 0xDB, 0xE7, 0x7C, 0xF9, 0xB0, 0x36, 0xC1, 0xB6, 0x87, 0x80
  740.   Data 0x78, 0xF0, 0x07, 0x8F, 0x1D, 0xB0, 0x34, 0x30, 0x36, 0xD0, 0xDB, 0x6F, 0x99, 0x35, 0xA5, 0xB0
  741.   Data 0xDB, 0x67, 0xCD, 0xB6, 0xB6, 0xDD, 0x6D, 0xA9, 0xB6, 0xF3, 0x15, 0xC0, 0x45, 0x1B, 0xB5, 0xB5
  742.   Data 0xDD, 0xF5, 0xB7, 0xCD, 0x81, 0xB6, 0xD8, 0x30, 0x3C, 0x00, 0x1E, 0x3C, 0x78, 0x03, 0xC6, 0x86
  743.   Data 0x06, 0x06, 0xDB, 0x6D, 0xB6, 0xEF, 0xA2, 0x35, 0xAD, 0x74, 0x30, 0xB5, 0xF3, 0x6D, 0xB0, 0x35
  744.   Data 0x4B, 0x63, 0x8C, 0xAB, 0xB6, 0x00, 0x33, 0x69, 0xBB, 0xE6, 0xF8, 0x0D, 0xB6, 0xDD, 0xB6, 0xED
  745.   Data 0xBC, 0x78, 0xF0, 0x0F, 0x00, 0xF1, 0xB6, 0x06, 0xC0, 0xDB, 0x6D, 0x81, 0xBB, 0x7C, 0xD6, 0xB5
  746.   Data 0xB1, 0xF3, 0x5A, 0xDD, 0xAD, 0xB6, 0xE4, 0x41, 0xDE, 0x3D, 0xDA, 0xE0, 0x1B, 0xBB, 0x5F, 0x3D
  747.   Data 0x81, 0xF3, 0x6C, 0x2B, 0x76, 0x0D, 0xB6, 0xF0, 0x07, 0x8F, 0x1E, 0x3C, 0x60, 0x6E, 0xDB, 0x6D
  748.   Data 0xB6, 0xC0, 0xDF, 0x3B, 0xE6, 0xBC, 0x6B, 0x5B, 0x75, 0xAC, 0xAE, 0xB6, 0xAA, 0x2E, 0x0A, 0x5C
  749.   Data 0xE2, 0xE4, 0x63, 0x38, 0x00, 0x1F, 0x3F, 0x87, 0x85, 0xF0, 0x09, 0xBE, 0x00, 0x90, 0x80, 0xE6
  750.   Data 0x78, 0x10, 0x00, 0x00, 0x24, 0x90, 0x0A, 0xCD, 0xE5, 0xA3, 0xD2, 0xF4, 0xB5, 0x16, 0x8B, 0x60
  751.   Data 0x2A, 0x51, 0x53, 0x3B, 0x1C, 0x67, 0x39, 0x40, 0x92, 0x4B, 0x1C, 0xBB, 0xA2, 0xF0, 0x1C, 0x67
  752.   Data 0x45, 0x79, 0x27, 0x7E, 0x70, 0xC9, 0x3C, 0xCC, 0x4B, 0xE3, 0x6B, 0x6B, 0x9D, 0xDA, 0xA2, 0x67
  753.   Data 0x7D, 0x81, 0xE0, 0xAA, 0xE2, 0x1C, 0x45, 0x40, 0xE2, 0x7C, 0xBF, 0x24, 0x85, 0xA6, 0x3D, 0x60
  754.   Data 0xA2, 0xAB, 0xBE, 0xE0, 0x50, 0x70, 0x52, 0xBE, 0x96, 0x17, 0x07, 0xE6, 0x6A, 0x82, 0xB5, 0xB0
  755.   Data 0x33, 0xCA, 0xE4, 0x11, 0x1D, 0x02, 0x01, 0xB6, 0xDD, 0xF3, 0xE7, 0xCD, 0xB6, 0xC0, 0xDB, 0x6D
  756.   Data 0xBC, 0x78, 0xF1, 0xE3, 0xC7, 0x8C, 0x0D, 0xDB, 0x6D, 0xB6, 0xD8, 0x1E, 0x3E, 0x6F, 0x9A, 0xD6
  757.   Data 0xB5, 0xAF, 0x9B, 0x6D, 0x6C, 0x56, 0x65, 0x8B, 0x22, 0x09, 0x07, 0xC0, 0x40, 0x0E, 0xDA, 0xEF
  758.   Data 0x9D, 0xF3, 0xE6, 0xC0, 0xDB, 0x76, 0xD8, 0x1E, 0x01, 0xE3, 0xC0, 0x1E, 0x3C, 0x06, 0xD0, 0xC0
  759.   Data 0xC0, 0xDB, 0x43, 0x6D, 0xBE, 0x78, 0xD6, 0xB4, 0xBE, 0xB3, 0x5F, 0x3A, 0xDA, 0xDB, 0x75, 0xB6
  760.   Data 0xD7, 0x5B, 0x0C, 0x66, 0xE1, 0x90, 0x78, 0xD6, 0xD7, 0xB7, 0xCE, 0x1F, 0x36, 0x06, 0xDB, 0x6E
  761.   Data 0xC0, 0xF0, 0x00, 0x78, 0xF1, 0xE0, 0x0F, 0xD8, 0x18, 0x18, 0x1B, 0x6D, 0xB6, 0xDB, 0xBE, 0x7C
  762.   Data 0xD6, 0xB5, 0xAF, 0x98, 0xD7, 0xCD, 0xB6, 0xDB, 0x5B, 0x33, 0x0D, 0xD3, 0x0E, 0xD8, 0x38, 0xDD
  763.   Data 0xB7, 0x6F, 0x9B, 0xE0, 0x36, 0xDB, 0x76, 0xDB, 0xB6, 0xF1, 0xE3, 0xC8, 0x3C, 0x83, 0xC6, 0xD8
  764.   Data 0x1B, 0x03, 0x6D, 0xB6, 0x06, 0xDD, 0xF3, 0x5A, 0x46, 0xD8, 0x6D, 0x6B, 0x66, 0xB6, 0xDB, 0x93
  765.   Data 0xC7, 0x49, 0x27, 0x6B, 0x80, 0x76, 0xED, 0x7D, 0x6E, 0x07, 0xCD, 0xB7, 0x8D, 0xDB, 0xB6, 0xDB
  766.   Data 0xC0, 0x1E, 0x3C, 0x78, 0xF1, 0xA1, 0x83, 0x6D, 0xB6, 0xDB, 0x03, 0x7D, 0x6F, 0x5A, 0xF1, 0xAD
  767.   Data 0x53, 0xE4, 0xB6, 0xBA, 0xE9, 0x29, 0x38, 0x39, 0x33, 0xFB, 0xE9, 0x88, 0xF0, 0x00, 0xF5, 0x65
  768. End Sub
  769. >Sub AddBitrate(frmsizecod As Byte)
  770.   AddInfo("Nominal bit rate: ")
  771.   Select frmsizecod
  772.   Case %000000
  773.     BitRate = 32
  774.   Case %000001
  775.     BitRate = 32
  776.   Case %000010
  777.     BitRate = 40
  778.   Case %000011
  779.     BitRate = 40
  780.   Case %000100
  781.     BitRate = 48
  782.   Case %000101
  783.     BitRate = 48
  784.   Case %000110
  785.     BitRate = 56
  786.   Case %000111
  787.     BitRate = 56
  788.   Case %001000
  789.     BitRate = 64
  790.   Case %001001
  791.     BitRate = 64
  792.   Case %001010
  793.     BitRate = 80
  794.   Case %001011
  795.     BitRate = 80
  796.   Case %001100
  797.     BitRate = 96
  798.   Case %001101
  799.     BitRate = 96
  800.   Case %001110
  801.     BitRate = 112
  802.   Case %001111
  803.     BitRate = 112
  804.   Case %010000
  805.     BitRate = 128
  806.   Case %010001
  807.     BitRate = 128
  808.   Case %010010
  809.     BitRate = 160
  810.   Case %010011
  811.     BitRate = 160
  812.   Case %010100
  813.     BitRate = 192
  814.   Case %010101
  815.     BitRate = 192
  816.   Case %010110
  817.     BitRate = 224
  818.   Case %010111
  819.     BitRate = 224
  820.   Case %011000
  821.     BitRate = 256
  822.   Case %011001
  823.     BitRate = 256
  824.   Case %011010
  825.     BitRate = 320
  826.   Case %011011
  827.     BitRate = 320
  828.   Case %011100
  829.     BitRate = 384
  830.   Case %011101
  831.     BitRate = 384
  832.   Case %011110
  833.     BitRate = 448
  834.   Case %011111
  835.     BitRate = 448
  836.   Case %100000
  837.     BitRate = 512
  838.   Case %100001
  839.     BitRate = 512
  840.   Case %100010
  841.     BitRate = 576
  842.   Case %100011
  843.     BitRate = 576
  844.   Case %100100
  845.     BitRate = 640
  846.   Case %100101
  847.     BitRate = 640
  848.   EndSelect
  849.   //
  850.   AddInfo(Str$(BitRate) + " kbps" + CR$)
  851. End Sub
  852. >Sub GetFrameLength(fs, frmsizecod)
  853.   FrameLength = 0
  854.   Select fs
  855.   Case %10 //32kHz
  856.     Select frmsizecod
  857.     Case %000000
  858.       FrameLength = 96
  859.     Case %000001
  860.       FrameLength = 96
  861.     Case %000010
  862.       FrameLength = 120
  863.     Case %000011
  864.       FrameLength = 120
  865.     Case %000100
  866.       FrameLength = 144
  867.     Case %000101
  868.       FrameLength = 144
  869.     Case %000110
  870.       FrameLength = 168
  871.     Case %000111
  872.       FrameLength = 168
  873.     Case %001000
  874.       FrameLength = 192
  875.     Case %001001
  876.       FrameLength = 192
  877.     Case %001010
  878.       FrameLength = 240
  879.     Case %001011
  880.       FrameLength = 240
  881.     Case %001100
  882.       FrameLength = 288
  883.     Case %001101
  884.       FrameLength = 288
  885.     Case %001110
  886.       FrameLength = 336
  887.     Case %001111
  888.       FrameLength = 336
  889.     Case %010000
  890.       FrameLength = 384
  891.     Case %010001
  892.       FrameLength = 384
  893.     Case %010010
  894.       FrameLength = 480
  895.     Case %010011
  896.       FrameLength = 480
  897.     Case %010100
  898.       FrameLength = 576
  899.     Case %010101
  900.       FrameLength = 576
  901.     Case %010110
  902.       FrameLength = 672
  903.     Case %010111
  904.       FrameLength = 672
  905.     Case %011000
  906.       FrameLength = 768
  907.     Case %011001
  908.       FrameLength = 768
  909.     Case %011010
  910.       FrameLength = 960
  911.     Case %011011
  912.       FrameLength = 960
  913.     Case %011100
  914.       FrameLength = 1152
  915.     Case %011101
  916.       FrameLength = 1152
  917.     Case %011110
  918.       FrameLength = 1344
  919.     Case %011111
  920.       FrameLength = 1344
  921.     Case %100000
  922.       FrameLength = 1536
  923.     Case %100001
  924.       FrameLength = 1536
  925.     Case %100010
  926.       FrameLength = 1728
  927.     Case %100011
  928.       FrameLength = 1728
  929.     Case %100100
  930.       FrameLength = 1920
  931.     Case %100101
  932.       FrameLength = 1920
  933.     EndSelect
  934.   Case %01 //44.1 kHz
  935.     Select frmsizecod
  936.     Case %000000
  937.       FrameLength = 69
  938.     Case %000001
  939.       FrameLength = 70
  940.     Case %000010
  941.       FrameLength = 87
  942.     Case %000011
  943.       FrameLength = 88
  944.     Case %000100
  945.       FrameLength = 104
  946.     Case %000101
  947.       FrameLength = 105
  948.     Case %000110
  949.       FrameLength = 121
  950.     Case %000111
  951.       FrameLength = 122
  952.     Case %001000
  953.       FrameLength = 139
  954.     Case %001001
  955.       FrameLength = 140
  956.     Case %001010
  957.       FrameLength = 174
  958.     Case %001011
  959.       FrameLength = 175
  960.     Case %001100
  961.       FrameLength = 208
  962.     Case %001101
  963.       FrameLength = 209
  964.     Case %001110
  965.       FrameLength = 243
  966.     Case %001111
  967.       FrameLength = 244
  968.     Case %010000
  969.       FrameLength = 278
  970.     Case %010001
  971.       FrameLength = 279
  972.     Case %010010
  973.       FrameLength = 348
  974.     Case %010011
  975.       FrameLength = 349
  976.     Case %010100
  977.       FrameLength = 417
  978.     Case %010101
  979.       FrameLength = 418
  980.     Case %010110
  981.       FrameLength = 487
  982.     Case %010111
  983.       FrameLength = 488
  984.     Case %011000
  985.       FrameLength = 557
  986.     Case %011001
  987.       FrameLength = 558
  988.     Case %011010
  989.       FrameLength = 696
  990.     Case %011011
  991.       FrameLength = 697
  992.     Case %011100
  993.       FrameLength = 835
  994.     Case %011101
  995.       FrameLength = 836
  996.     Case %011110
  997.       FrameLength = 975
  998.     Case %011111
  999.       FrameLength = 976
  1000.     Case %100000
  1001.       FrameLength = 1114
  1002.     Case %100001
  1003.       FrameLength = 1115
  1004.     Case %100010
  1005.       FrameLength = 1253
  1006.     Case %100011
  1007.       FrameLength = 1254
  1008.     Case %100100
  1009.       FrameLength = 1393
  1010.     Case %100101
  1011.       FrameLength = 1394
  1012.     EndSelect
  1013.   Case %00 //48 kHz
  1014.     Select frmsizecod
  1015.     Case %000000
  1016.       FrameLength = 64
  1017.     Case %000001
  1018.       FrameLength = 64
  1019.     Case %000010
  1020.       FrameLength = 80
  1021.     Case %000011
  1022.       FrameLength = 80
  1023.     Case %000100
  1024.       FrameLength = 96
  1025.     Case %000101
  1026.       FrameLength = 96
  1027.     Case %000110
  1028.       FrameLength = 112
  1029.     Case %000111
  1030.       FrameLength = 112
  1031.     Case %001000
  1032.       FrameLength = 128
  1033.     Case %001001
  1034.       FrameLength = 128
  1035.     Case %001010
  1036.       FrameLength = 160
  1037.     Case %001011
  1038.       FrameLength = 160
  1039.     Case %001100
  1040.       FrameLength = 192
  1041.     Case %001101
  1042.       FrameLength = 192
  1043.     Case %001110
  1044.       FrameLength = 224
  1045.     Case %001111
  1046.       FrameLength = 224
  1047.     Case %010000
  1048.       FrameLength = 256
  1049.     Case %010001
  1050.       FrameLength = 256
  1051.     Case %010010
  1052.       FrameLength = 320
  1053.     Case %010011
  1054.       FrameLength = 320
  1055.     Case %010100
  1056.       FrameLength = 384
  1057.     Case %010101
  1058.       FrameLength = 384
  1059.     Case %010110
  1060.       FrameLength = 448
  1061.     Case %010111
  1062.       FrameLength = 448
  1063.     Case %011000
  1064.       FrameLength = 512
  1065.     Case %011001
  1066.       FrameLength = 512
  1067.     Case %011010
  1068.       FrameLength = 640
  1069.     Case %011011
  1070.       FrameLength = 640
  1071.     Case %011100
  1072.       FrameLength = 768
  1073.     Case %011101
  1074.       FrameLength = 768
  1075.     Case %011110
  1076.       FrameLength = 896
  1077.     Case %011111
  1078.       FrameLength = 896
  1079.     Case %100000
  1080.       FrameLength = 1024
  1081.     Case %100001
  1082.       FrameLength = 1024
  1083.     Case %100010
  1084.       FrameLength = 1152
  1085.     Case %100011
  1086.       FrameLength = 1152
  1087.     Case %100100
  1088.       FrameLength = 1280
  1089.     Case %100101
  1090.       FrameLength = 1280
  1091.     EndSelect
  1092.   EndSelect
  1093.   //Da Spec Table: "words/syncframe" mu▀ das ganze noch
  1094.   //mit 2 multipliziert werden
  1095.   FrameLength = FrameLength * 2
  1096. End Sub
  1097. >Sub AddInfo(txt$)
  1098.   Local dummy$ = ed_Info.Text
  1099.   dummy$ = dummy$ + txt$
  1100.   ed_Info.Text = dummy$
  1101. EndSub
  1102. Sub WriteTarget(FileTyp As Integer)
  1103.   Local n%, dummy$
  1104.   Local Dim Block|(FrameLength)
  1105.   Local Error? = False
  1106.   Local Status_written? = False
  1107.   Local fix_ms% = Val(ed_Delay.Text)
  1108.   Local fix_ms_End% = Val(ed_EndDelay.Text)
  1109.   Local add_Frames As Large = 0, cut_Frames As Large = 0
  1110.   Local cut_Bytes As Large = 0, add_Bytes As Large = 0
  1111.   Local add_FramesEnd As Large = 0, cut_FramesEnd As Large = 0
  1112.   Local cut_BytesEnd As Large = 0, add_BytesEnd As Large = 0
  1113.   Local SourceLen As Large, i As Large, j As Large
  1114.   Local SourceLenORG As Large
  1115.   Local SourceLen_max As Large
  1116.   Local Count_Frames% = 0
  1117.   Local txt$
  1118.   Local Frame$ = "frame"
  1119.   //
  1120.   Local B1|, B2|
  1121.   If FileTyp = AC3
  1122.     B1| = 0x0B
  1123.     B2| = 0x77
  1124.   EndIf
  1125.   If FileTyp = MPA
  1126.     B1| = 0xFF
  1127.     //B2| = 0xFC
  1128.   EndIf
  1129.   DoEvents //Damit evtl. Alertboxen verschwinden
  1130.   //
  1131.   If fix_ms% < 0
  1132.     cut_Frames = Round(Abs(fix_ms%) * FramesPerSecond / 1000)
  1133.     cut_Bytes = cut_Frames * FrameLength
  1134.     AddInfo(Str$(Abs(fix_ms%)) + "ms (" + @Frame2time(cut_Frames) + ") ms to be cut at beginning." + CR$)
  1135.   EndIf
  1136.   If fix_ms% > 0
  1137.     add_Frames = Round((fix_ms%) * FramesPerSecond / 1000)
  1138.     add_Bytes = add_Frames * FrameLength
  1139.     AddInfo(Str$(fix_ms%) + "ms (" + @Frame2time(add_Frames) + ") to be add at beginning." + CR$)
  1140.   EndIf
  1141.   If fix_ms_End% < 0
  1142.     cut_FramesEnd = Round(Abs(fix_ms_End%) * FramesPerSecond / 1000)
  1143.     cut_BytesEnd = cut_FramesEnd * FrameLength
  1144.     AddInfo(Str$(Abs(fix_ms_End%)) + "ms (" + @Frame2time(cut_FramesEnd) + ") to be cut at end." + CR$)
  1145.   EndIf
  1146.   If fix_ms_End% > 0
  1147.     add_FramesEnd = Round((fix_ms%) * FramesPerSecond / 1000)
  1148.     add_BytesEnd = add_FramesEnd * FrameLength
  1149.     AddInfo(Str$(Abs(fix_ms_End%)) + "ms (" + @Frame2time(add_FramesEnd) + ") to be add at end." + CR$)
  1150.   EndIf
  1151.   //
  1152.   DefMouse 11 //Hourglass
  1153.   //
  1154.   Open SourceFile$ for Input As # 1
  1155.   Open TargetFile$ for Output As # 2
  1156.   SourceLenORG = LOF(# 1)
  1157.   SourceLen_max = SourceLenORG - FrameLength
  1158.   SourceLen = SourceLenORG / FrameLength
  1159.   SourceLen = SourceLen * FrameLength
  1160.   pro_Status.Max = (SourceLen - cut_BytesEnd)
  1161.   For i = 0 To (SourceLen - cut_BytesEnd) Step FrameLength
  1162.     pro_Status.Value = i
  1163.     If Loc(# 1) <= SourceLen_max
  1164.       BGet # 1, V:Block|(0), FrameLength
  1165.       If FileTyp = AC3
  1166.         If Not ((Block|(0) = B1|) And (Block|(1) == B2|))
  1167.           Error? = True
  1168.         EndIf
  1169.       EndIf
  1170.       If FileTyp = MPA
  1171.         If Not (Block|(0) = B1|)
  1172.           Error? = True
  1173.         EndIf
  1174.       EndIf
  1175.       If Error? = False
  1176.         If add_Bytes > 0
  1177.           add_Bytes = 0
  1178.           If SilentFrameOK?
  1179.             Frame$ = "silent frame"
  1180.           EndIf
  1181.           Status("Adding " + Str$(add_Frames) + " " + Frame$ + "s.")
  1182.           For j = 1 To add_Frames
  1183.             If SilentFrameOK?
  1184.               BPut # 2, V:SilentFrame|(0), FrameLength
  1185.             Else
  1186.               BPut # 2, V:Block|(0), FrameLength
  1187.             EndIf
  1188.             Count_Frames%++
  1189.           Next j
  1190.         EndIf
  1191.         If i >= cut_Bytes
  1192.           If Status_written? = False
  1193.             Status_written? = True
  1194.             Status("Writing...")
  1195.           EndIf
  1196.           BPut # 2, V:Block|(0), FrameLength
  1197.           Count_Frames%++
  1198.         EndIf
  1199.       EndIf
  1200.     EndIf
  1201.     Exit If Error?
  1202.   Next i
  1203.   If add_FramesEnd > 0
  1204.     add_Bytes = 0
  1205.     Status("Adding " + Str$(add_Frames) + " frames at end.")
  1206.     For j = 1 To add_Frames
  1207.       BPut # 2, V:Block|(0), FrameLength
  1208.       Count_Frames%++
  1209.     Next j
  1210.   EndIf
  1211.   Close # 1
  1212.   Close # 2
  1213.   Status("pending...")
  1214.   DefMouse 0 //Default
  1215.   If Error?
  1216.     Alert 2, "Source file damaged.", 1, "OK", n%
  1217.   Else
  1218.     pro_Status.Value = 0
  1219.     txt$ = ""
  1220.     AddInfo(CR$ + "Target file information:" + CR$ + CR$)
  1221.     If cut_Frames == 1
  1222.       AddInfo(Str$(cut_Frames) + " frame (" + Str$(@Frame2ms(cut_Frames)) + "ms) has been cut at start." + CR$)
  1223.     EndIf
  1224.     If cut_Frames > 1
  1225.       AddInfo(Str$(cut_Frames) + " frames (" + Str$(@Frame2ms(cut_Frames)) + "ms) have been cut at start." + CR$)
  1226.     EndIf
  1227.     If add_Frames == 1
  1228.       AddInfo(Str$(add_Frames) + " " + Frame$ + " (" + Str$(@Frame2ms(add_Frames)) + "ms) has been added at start." + CR$)
  1229.     EndIf
  1230.     If add_Frames > 1
  1231.       AddInfo(Str$(add_Frames) + " " + Frame$ + "s (" + Str$(@Frame2ms(add_Frames)) + "ms) have been added at start." + CR$)
  1232.     EndIf
  1233.     If cut_FramesEnd == 1
  1234.       AddInfo(Str$(cut_FramesEnd) + " frame (" + Str$(@Frame2ms(cut_FramesEnd)) + "ms) has been cut at end." + CR$)
  1235.     EndIf
  1236.     If cut_FramesEnd > 1
  1237.       AddInfo(Str$(cut_FramesEnd) + " frames (" + Str$(@Frame2ms(cut_FramesEnd)) + "ms) have been cut at end." + CR$)
  1238.     EndIf
  1239.     If add_FramesEnd == 1
  1240.       AddInfo(Str$(add_FramesEnd) + " frame (" + Str$(@Frame2ms(add_FramesEnd)) + "ms) has been added at end." + CR$)
  1241.     EndIf
  1242.     If add_FramesEnd > 1
  1243.       AddInfo(Str$(add_FramesEnd) + " frames (" + Str$(@Frame2ms(add_FramesEnd)) + "ms) have been added at end." + CR$)
  1244.     EndIf
  1245.     AddInfo(Str$(Count_Frames%) + " frames (" + @Frame2time(Count_Frames%) + ") have been written." + CR$)
  1246.     If SourceLenORG Mod FrameLength > 0
  1247.       AddInfo("Last frame was too short. Ignored." + CR$)
  1248.     EndIf
  1249.     //
  1250.     If FramesPerSecond == 1
  1251.       AddInfo("There is 1 frame in one second.")
  1252.     Else
  1253.       AddInfo("There are " + Str$(FramesPerSecond) + " frames in one second.")
  1254.     EndIf
  1255.     //
  1256.     //
  1257.     dummy$ = Left$(TargetFile$, Len(TargetFile$) - 4) + ".txt"
  1258.     Open dummy$ for Output As # 1
  1259.     Print # 1, ed_Info.Text
  1260.     Close # 1
  1261.   EndIf
  1262. End Sub
  1263. >Function Frame2ms(Frames As Large) As Integer
  1264.   If FramesPerSecond > 0
  1265.     Frame2ms = Frames / FramesPerSecond * 1000
  1266.   EndIf
  1267. End Func
  1268. >Function Frame2time(Frames%) As String
  1269.   Local Frame_ms As Integer = 0
  1270.   //
  1271.   If FramesPerSecond > 0
  1272.     Frame_ms = (Frames% / FramesPerSecond) * 1000
  1273.   EndIf
  1274.   //
  1275.   Local Frame_sec As Integer = Int(Frame_ms / 1000)
  1276.   Frame_ms = Frame_ms - Frame_sec * 1000
  1277.   Local Frame_min As Integer = Int(Frame_sec / 60)
  1278.   Frame_sec = Frame_sec - Frame_min * 60
  1279.   Local Frame_h As Integer = Int(Frame_min / 60)
  1280.   Frame_min = Frame_min - Frame_h * 60
  1281.   Frame2time = Right$("0" + Str$(Frame_h), 2) + ":" + Right$("0" + Str$(Frame_min), 2) + ":" + Right$("0" + Str$(Frame_sec), 2) + "," + Right$("00" + Str$(Frame_ms), 3)
  1282. End Func
  1283. Sub Status(txt$)
  1284.   ed_Status.Text = txt$
  1285.   DoEvents
  1286. End Sub
  1287. Sub frm_WinMain_Load
  1288.   chk_AddSilent.Value = GetPrivateProfileInt("Settings", "Add Silence", 1, settingsFile$)
  1289. End Sub
  1290. Sub frm_WinMain_Close(Cancel?)
  1291.   WriteIniFile
  1292. End Sub
  1293. $DatFile
  1294. $FormVersion = 2
  1295. :{frm_WinMain 675, 1163
  1296. fKAUDtWMXKwiEIpA/KgAAAhph/U9nIRE7Q4PwTT8WRlxYERIRRRERFyMSETERQ4XDLSIWIxYmYyv
  1297. wzw/w/PQAAGYANIwNW09UHShJACCYQQRDESQgAAIFEAgRAAlwtsEChQ7IZNEQbDYUQAWnXDYg7Tv
  1298. 11XK65VPJ17v+3J1r4mVpqDX4bIsgWyry1fTrK/tPzohLLCChfNTLx1wRLl+Y0tGsECUPD/QozAC
  1299. j95wvyVcIwUOJks7/tyYmybIu5c4YgRXrHpD4HmuuZs8ga67Y47+2nk0k3glAyClyhK6vGC6zB02
  1300. QOGYu56Z4lg9LaJNBHhA9zQItGQYIcOEIeqKwtpL8gBCnOK4Px4TqxqTyu8d97IJtwVgN2mDjcyB
  1301. 8DriiHaBbfODPhASjQ+5gCo3yRgMunj6HCQvzmyHNBmSlK1jwSpMBguApe4WwHybcM1s7R7F61Mv
  1302. hWSaGPQu+8ejbSSFvzBWayB8BNXDBc9sF+v22wziH8OlcEEB2yB0FlyBy4R2EaO4LAd2wSFpCr3b
  1303. Cz3Y419DFEki1gBVuaqjo+AxTZiw8o8AyI0xS7YSbQrHpRcNgXxxgt44Rf3JBbs2EaYCh1hoTwsC
  1304. ijyX4Shtpo6grvqkw418j3ghwPWfJtEwXVKX2CM5QbjqjkRxBDhR25A2xNHonyhAmdiIBmAtq2xR
  1305. rO1OOqtig8qr6vnfpUd7HFf3QlUaowobHnuZQyHg0GqmK0pmDsmzVcuJKV6c0vPT6WIISQUcCBcE
  1306. +R+zwvlcg8uJVhswllwQThPHTYcwsszHEHLyhfkSlinvAz8NhPlxpvP0ZohNfjtB+8JKbNgJyWj4
  1307. YBWdWTfetkS+RRc0ubCEkPT59efCxsxsZW3fah4ZNwE168q0aIBaocj/RFTDBAAA
  1308. $ExeName = Ac3 Delay Corrector.Exe
  1309. $LanguageId = 0407
  1310. $DatFile
  1311.